Repository navigation
mtcollins1 runner: dispatch floor to ephemeral slot + collect instruments (leg 3) - #13640
gunbai-bot[bot] wants to merge 3 commits into
Conversation
…n and collect its instruments (leg 3) [wip]
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: aefd8e7268
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| match job.runner_name { | ||
| Present { value: n } => | ||
| if n == (expected.value as String) { none } else { |
There was a problem hiding this comment.
Check the minted runner ID during readback
When a JIT registration is deleted and recreated under the same runner name, such as when retrying the same attempt, this name-only comparison accepts the replacement even though the job did not run on the registration represented by the dispatch receipt. QualificationDispatchPlan already preserves the minted runner_id, and GitHub's workflow-job response exposes runner_id, so model and compare that value as well; otherwise measurements can be attributed to the wrong ephemeral slot. GitHub workflow-job response schema
Useful? React with 👍 / 👎.
| InstrumentInRunArtifact { name: n } => | ||
| match artifacts |> filter(a => a.name == (n as String) && !a.expired) |> first { | ||
| Present { value: a } => InstrumentCollected { instrument: instrument, reading: InstrumentArtifactListed { artifact: a } } |
There was a problem hiding this comment.
Download the claim-cost artifact before marking it collected
For ClaimCostArtifactEvalSteps, this branch returns only list-entry metadata (id, name, size, and expiry) and marks the instrument collected; it never retrieves the archive containing required_floor_claim_cost.tsv. The route describes this instrument as eval-step data parsed by parse_claim_cost_tsv, but no later consumer can obtain those bytes from InstrumentArtifactListed; GitHub exposes artifact contents through a separate download endpoint, so the archive must be downloaded/extracted or the result must remain uncollected. GitHub artifact download endpoint
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: aefd8e7268
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| ref: p.target.branch as String, | ||
| inputs: qualification_dispatch_inputs(attempt: p.attempt), |
There was a problem hiding this comment.
Bind dispatch to the pinned workload revision
When FloorWorkloadPin.revision differs from the current tip of this branch—or the branch advances before dispatch—the route runs the wrong corpus because the dispatch sends only the mutable branch and the attempt label; the workload pin carried by DispatchFloorToSlot never reaches this plan. GitHub's endpoint selects a branch/tag through ref and accepts workflow-specific values through inputs (Create a workflow dispatch event), so the qualification workflow needs the pinned revision as an input and must check out that exact SHA (with readback bound to it). Otherwise the later subject join may reject the measurement, but only after consuming the ephemeral registration without ever running the requested experiment.
Useful? React with 👍 / 👎.
|
Closed without folding in the v1 closeout bankruptcy (#13641). A superseded WIP flush (quiet-cat-583). The branch is kept for archaeology; no follow-up obligation is created. — sent from neat-wolf-604 |
Auto-opened by session-dashboard for session
quiet-cat-583.Pushing to
session/quiet-cat-583advances this PR.Worker attestation
Before flipping this PR to ready for review, confirm each item:
npm test,cargo test) and the result.Closes #Ndirective.Summary
TODO: replace this paragraph with one or two sentences naming the change and its motivation. Reviewers read this first.
Test plan